Micron Document
██████╗ ███████╗████████╗██╗██████╗ ███████╗██████╗ ██╗ █████╗
██╔══██╗██╔════╝╚══██╔══╝██║██╔══██╗██╔════╝██╔══██╗██║██╔══██╗
██████╔╝█████╗ ██║ ██║██████╔╝█████╗ ██║ ██║██║███████║
██╔══██╗██╔══╝ ██║ ██║██╔═══╝ ██╔══╝ ██║ ██║██║██╔══██║
██║ ██║███████╗ ██║ ██║██║ ███████╗██████╔╝██║██║ ██║
╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝╚═╝ ╚══════╝╚═════╝ ╚═╝╚═╝ ╚═╝


🬧 The NomadNet Encyclopedia | Archives | Info
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b

🔍 Search

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

FLTK
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
mwbqFast Light Toolkit (mwbgFLTK), in mwbwinformatica, è un toolkit mwcamultipiattaforma per la realizzazione di mwcqinterfacce grafiche (GUI)cite-ref-1[1], sviluppata inizialmente da Bill Spitzak e altri.

Utilizzando i propri mwdwwidget, sistemi di disegno ed eventi astratti dal sistema sottostante, consente di scrivere programmi che hanno lo stesso aspetto su tutti i mweasistemi operativi supportati.

FLTK è un mwegsoftware libero e open source, concesso in licenza sotto mwewGNU Lesser General Public License (LGPL) con una clausola aggiunta che consente il collegamento statico da applicazioni con licenze incompatibili.

A differenza delle librerie dell'interfaccia utente come mwfqGTK, mwfgQt e mwfwwxWidgets, FLTK utilizza un design più leggero e si limita alla funzionalità della GUI. Per questo motivo, la mwgalibreria è molto piccola (il programma FLTK di mwgq"Hello World" è di circa 100 mwggKiB) e di solito è mwgwcollegata staticamente. Evita inoltre macro complesse, mwhapreprocessori di codice separati e l'uso di alcune funzionalità avanzate di mwhqC++: modelli, mwhgeccezioni e mwhwinformazioni sul tipo di runtime (RTTI) o, per FLTK 1.x, i mwianamespace. Il tutto, in combinazione con le dimensioni modeste del pacchetto, rende relativamente facile l'apprendimento per i nuovi utenti.cite-ref-2[2]

Questi vantaggi comportano anche svantaggi corrispondenti. FLTK offre meno widget rispetto alla maggior parte dei toolkit GUI e, a causa dell'utilizzo di widget non nativi, non ha un aspetto nativo su nessuna piattaforma.

Contents

1.0.x
1.1.x
1.2.x
1.3.x
1.4.x
Note

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Origini del nome

FLTK è stato originariamente progettato per essere compatibile con la libreria Forms sviluppata per macchine mwkqSilicon Graphics (SGI) (un derivato di questa libreria chiamato mwkgmwkwXForms è ancora abbastanza usato). In quella libreria, tutte le funzioni e le strutture iniziano con mwlafl_. Questa denominazione è stata estesa a tutti i nuovi metodi e widget nella libreria C++ e questo prefisso mwlqFL è stato utilizzato come nome della libreria. Dopo che FL è stato rilasciato come open source, si è scoperto che cercare "FL" su Internet era un problema, perché è anche l'abbreviazione dello stato della mwlgFlorida. Dopo molte discussioni e la ricerca di un nuovo nome per il toolkit, che era già utilizzato da diverse persone, Bill Spitzak ha inventato mwlwFast Light Tool Kit (FLTK).cite-ref-3[3]

Architettura

FLTK è un mwngtoolkit widget mwnworientato agli oggetti scritto nel linguaggio di programmazione mwoaC++. Mentre GTK è ottimizzato principalmente per mwoqX Window System e mwogWayland, FLTK funziona bene su altre piattaforme, tra cui mwowMicrosoft Windows (interfacciato con mwpaWindows API) e mwpqMacOS (interfacciato con mwpgQuartz). È stato implementato un back-end mwpwWayland che sarà disponibile nella versione 1.4.0.cite-ref-4[4] FLTK2 ha ottenuto il supporto sperimentale per l'utilizzo facoltativo della libreria grafica mwraCairo.

Supporto dei linguaggi di programmazione

Una libreria scritta in un linguaggio di programmazione può essere utilizzata in un altro linguaggio se vengono sviluppati i relativi mwrwbinding. FLTK ha una gamma di associazioni per vari linguaggi.

FLTK è stato scritto e progettato principalmente nel mwsqlinguaggio di programmazione mwsgC++. Tuttavia, esistono binding per altri linguaggi, ad esempio mwswLuacite-ref-5[5], mwuaPerlcite-ref-6[6], mwvqPythoncite-ref-7[7], mwwgRubycite-ref-8[8], mwxwRustcite-ref-9[9] e mwzaTclcite-ref-10[10].

Per FLTK 1.x, questo esempio di codice crea una finestra con un mwagpulsante mwawOK:

# include <FL/Fl.H>
# include <FL/Fl_Window.H>
# include <FL/Fl_Button.H>
int main(int argc, char *argv[]) {
Fl_Window* w = new Fl_Window(330, 190);
new Fl_Button(110, 130, 100, 35, "Okay");
w->end();
w->show(argc, argv);
return Fl::run();
}

Progettazione della GUI

FLTK include mwywFast Light User Interface Designer (FLUID), un mwzadesigner grafico della GUI che genera file sorgente e di intestazione mwzqC++.

Versioni

Questa cronologia delle versioni è un esempio della natura talvolta tumultuosa dello sviluppo open source.cite-ref-versions-11-0[11]

1.0.x

Questa è la versione stabile precedente, ora non mantenuta.

1.1.x

Questa è la versione stabile precedente, ora non mantenuta.

Ramo di sviluppo 2.0

Questo era un ramo di sviluppo, a lungo pensato come il step successivo nell'evoluzione di FLTK, con molte nuove funzionalità e uno stile di programmazione più pulito. Non ha mai raggiunto la stabilità e lo sviluppo è sostanzialmente cessato.

1.2.x

Questo è stato un tentativo di prendere alcune delle migliorie della versione 2.0 e di unirle nuovamente nel più popolare ramo 1.1. Non è più sviluppato.

1.3.x

Versione stabile attuale.cite-ref-versions-11-1[11] Fornisce il supporto mw4gUTF-8.

1.4.x

Ramo di sviluppo attuale. Aggiunge più funzionalità alla versione 1.3.cite-ref-versions-11-2[11]

Ramo di sviluppo 3.0

Questo ramo è principalmente un modello concettuale per il lavoro futuro. Ora inattivo.

Note

cite-note-11. mw8q(mw8gmw8wEN) mw9amw9qFast Light Toolkit, su mw9gwww.fltk.org. mw9wURL consultato il 30 gennaio 2020.
cite-note-22. mw-w(mw-amw-qEN) mw-gmw-wFast Light ToolKit (FLTK), su mwaqacpplibs.com mwaqe(archiviato dall'mwaqiurl originale il 18 maggio 2015).
cite-note-33. mwaqy(mwaqcmwaqgEN) mwaqkmwaqoArticle #363: What does "FLTK" mean?, su mwaqswww.fltk.org. mwaqwURL consultato il 7 maggio 2024.
cite-note-44. mwara(mwaremwariEN) mwarmmwarqSTR #3371, su mwaruwww.fltk.org, 2 aprile 2017. mwaryURL consultato il 7 maggio 2024.
cite-note-55. mwaro(mwarsmwarwEN) mwar0mwar4murgaLua, su mwar8murga-projects.com mwasa(archiviato dall'mwaseurl originale il 22 marzo 2016).
cite-note-66. mwasu(mwasymwascEN) mwasgmwaskFLTK.pm, su mwasowww.fltk.org. mwassURL consultato il 7 maggio 2024.
cite-note-77. mwas8(mwatamwateEN) mwatimwatmpyFLTK Home Page, su mwatqpyfltk.sourceforge.io. mwatuURL consultato il 7 maggio 2024.
cite-note-88. mwatk(mwatomwatsEN) mwatwmwat0Ruby/FLTK, su mwat4ruby-fltk.sourceforge.net. mwat8URL consultato il 7 maggio 2024.
cite-note-99. mwaum(mwauqmwauuEN) mwauymwaucfltk-rs/fltk-rs, fltk-rs, 6 maggio 2024. mwaugURL consultato il 7 maggio 2024.
cite-note-1010. mwauw(mwau0mwau4EN) mwau8mwavaTcl/Fltk dynamic extension for Tcl, su mwaveSourceForge, 3 aprile 2013. mwaviURL consultato il 7 maggio 2024.
cite-note-versions-1111. mwavo(mwavsmwavwEN) mwav0mwav4Article #825: What are the Versions of FLTK?, su mwav8fltk.org. mwawaURL consultato il 7 maggio 2024.

Voci correlate

• mwawqGTK
• mwawyQt
• mwawowxWidgets

Altri progetti

Altri progetti

• Wikimedia Commons

• Wikimedia Commons contiene immagini o altri file su FLTK

Collegamenti esterni

• (EN) Sito ufficiale, su fltk.org.
• FLTK, su packages.debian.org.
• Repository sorgenti di FLTK, su github.com.
• citereffree-software-directory(EN) FLTK, su Free Software Directory.